package com.zy.swagger.converter;

import com.alibaba.fastjson.JSON;
import com.zy.swagger.constant.ProjectConstant;
import com.zy.swagger.dto.AppManageDTO;
import com.zy.swagger.entity.AppManage;
import com.zy.swagger.vo.AppManageVO;
import org.springframework.beans.BeanUtils;
import org.springframework.util.StringUtils;

import java.util.List;
import java.util.Map;

/**
 * 应用管理表(表t_app_manage)数据实体转换辅助类
 *
 * @author ZY
 * @date 2021-04-23 22:37:18
 */
public class AppManageConverter {

    /**
     * 私有化构造器
     */
    private AppManageConverter() {
    }

    /**
     * 实体类转DTO
     *
     * @param entity 实体类
     * @return 转换后的对象
     */
    public static AppManageDTO covertToDTO(AppManage entity) {
        AppManageDTO dto = new AppManageDTO();
        BeanUtils.copyProperties(entity, dto);
        return dto;
    }

    /**
     * 实体类转VO
     *
     * @param entity 实体类
     * @return 转换后的对象
     */
    public static AppManageVO convertToVO(AppManage entity) {
        AppManageVO vo = new AppManageVO();
        BeanUtils.copyProperties(entity, vo);
        return vo;
    }

    /**
     * DTO转实体类
     *
     * @param dto 参数对象
     * @return 转换后的实体类对象
     */
    public static AppManage convertFromDTO(AppManageDTO dto) {
        AppManage entity = new AppManage();
        BeanUtils.copyProperties(dto, entity);
        return entity;
    }

    /**
     * VO转实体类
     *
     * @param vo 参数对象
     * @return 转换后的实体类对象
     */
    public static AppManage convertFromVO(AppManageVO vo) {
        AppManage entity = new AppManage();
        BeanUtils.copyProperties(vo, entity);
        return entity;
    }

    /**
     * 转换归属端名称
     *
     * @param belongEnd 归属端：1.企业端 2.医端 3.患端 4.商业端 5.中台
     * @return 返回对应的名称
     */
    public static String convertBelongEnd(Integer belongEnd) {
        switch (belongEnd) {
            case 1:
                return "企业端";
            case 2:
                return "医端";
            case 3:
                return "患端";
            case 4:
                return "商业端";
            case 5:
                return "中台";
            default:
                return "";
        }
    }
}